package net.maku.im.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import net.maku.framework.common.utils.DateUtils;

import java.io.Serializable;
import java.util.Date;

/**
* IM用户
*
* @author Blue 
* @since 1.0.0 2024-07-14
*/
@Data
@Schema(description = "IM用户")
public class ImUserVO implements Serializable {
	private static final long serialVersionUID = 1L;

	@Schema(description = "id")
	private Long id;

	@Schema(description = "用户名")
	private String userName;

	@Schema(description = "用户昵称")
	private String nickName;

	@Schema(description = "用户头像")
	private String headImage;

	@Schema(description = "用户头像缩略图")
	private String headImageThumb;

	@Schema(description = "性别 0:男 1::女")
	private Integer sex;

	@Schema(description = "账号是否封禁")
	private Boolean isBanned;

	@Schema(description = "账号被封禁原因")
	private String reason;

	@Schema(description = "个性签名")
	private String signature;

	@Schema(description = "最后登录时间")
	@JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN)
	private Date lastLoginTime;

	@Schema(description = "创建时间")
	@JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN)
	private Date createdTime;

}